	// validasi label tandan
	var label_tandan_validator = function(label){
		//		XXXXXXXXX/YYYYYYYY/YEAR-MO-DA
		return /^(.{1,14})\/(.{1,8})\/(\d{4}\-\d{2}\-\d{2})$/.test(label);
	}
	
	// cek apakah nama tandan dan jumlah dan satuan dan harga sudah diisi semua..
	var tandan_empty = function(id){
		var tandan = tandan_get(id);

		var labelTandanStatus = tandan[0] == '';
		var beratTandanStatus = tandan[1] == '';

		return new Array(labelTandanStatus, beratTandanStatus);
	}

	// get value
	var tandan_get = function(id){
		var labelTandan = $('input#label_tandan-'+id).val();
		var beratTandan = $('input#berat_tandan-'+id).val();

		return new Array(labelTandan, beratTandan);
	}

	var tandan_trigger_error = function(id, status){
		// nama, jumlah, satuan, harga
		
		if( status[0] ) $('input#label_tandan-'+id).addClass('error');
		if( status[1] ) $('input#berat_tandan-'+id).addClass('error');
	}

	// collect validator
	var tandan_validator = function(id, idx){
		var tandan = tandan_get(id);
		var status = tandan_empty(id);
		
		tandan_trigger_error(id, status);
	}

	$.validator.addMethod("label_tandan", function(value, element) {
		var id = $(element).attr('id').substr("label_tandan-".length);	
		tandan_validator(id);
		
		return value != '' && label_tandan_validator(value);
	}, "Label tandan tidak valid.");

    
	// jumlah tandan dan nama tandan harus dipilih... harus keduanya diisi.
	$.validator.addMethod("berat_tandan", function(value, element) {
		var id = $(element).attr('id').substr("berat_tandan-".length);
		tandan_validator(id);
		
		return value != '' && checkNumber(value);
	}, "Berat tandan harus diisi angka.");
	